I. Field of the Invention
The present invention relates to the delivery of video streams over a switched network. More particularly, the invention relates to a system and method for facilitating the scheduling and transmission of video streams over a switched network, such as an Asynchronous Transfer Mode (ATM) network.
II. List of Acronyms
The written description provided herein contains acronyms which refer to various techniques, services, groups, modes and standards. Although known, use of several of these acronyms is not strictly standardized in the art. For purposes of the written description provided herein, these acronyms are defined as follows:
ABR--Available Bit Rate PA1 ATM--Asynchronous Transfer Mode PA1 B-Picture--Bidirectionally-Coded Picture PA1 CBR--Constant Bit Rate PA1 CDV--Cell Delay Variation PA1 CDVT--Cell Delay Variation Tolerance PA1 CLR--Cell Loss Ratio PA1 CTD--Cell Transfer Delay PA1 DCT--Discrete Cosine Transform PA1 EBW--Effective Bandwidth PA1 GCRA--Generic Cell Rate Algorithm PA1 GoP--Group of Pictures PA1 I-Picture--Intra-Coded Picture PA1 ISDN--Integrated Services Digital Network PA1 JPEG--Joint Photographic Experts Group PA1 LAN--Local Area Network PA1 MBS--Maximum Burst Size PA1 MBS.sub.s --Sustainable Burst Size PA1 MCR--Minimum Cell Rate PA1 MPEG--Moving Picture Experts Group PA1 P-Picture--Predictively-Coded Picture PA1 PCR--Peak Cell Rate PA1 QoS--Quality of Service PA1 SCR--Sustained Cell Rate PA1 TCP.backslash.IP--Transmission Control Protocol.backslash.Internet Protocol PA1 UPC--Usage Parameter Control PA1 VBV--Video Buffer Verifier PA1 WAN--Wide Area Network
III. Background and Material Information
Switched networks are used for transporting various types of data, including audio and video data. The transmission of video data is much more network intensive than the transmission of audio data. However, video quality over a switched network can be maintained when sufficient bandwidth capacity and other network resources are provided. As a result, video retrieval, video-on-demand and other video or multimedia services are often implemented through switched-based networks to provide the transfer of video from a source to one or more destinations.
Switched networks transport data through the use of connections or routes that are established by switch elements in the network. These routes may be fixed or temporal with respect to the data that is transferred. An example of a switched-based network that creates fixed connections or routes between two points is an ATM network. ATM is a core technology for B-ISDN networks, and is commercially deployed in local area networks (LANs) and wide area networks (WANs). In an ATM network, data is transferred in cells or packets over a connection that is created and fixed when the data transfer begins. This differs from other network technologies, such as Transmission Control Protocol/Internet Protocol (TCP/IP), in which messages are divided into packets that can take different routes from source to destination.
Current implementations of ATM support data transfer rates of rates up to 2.4 Gbps (gigabits per second). This compares to a maximum of 1 Gbps for Ethernet, a technology that is used for most LANs. In addition, small-fixed size cells (53 bytes) are utilized in ATM to allow multiplexing of various data types with guaranteed cell rate, cell loss and cell delay variation parameters. These capabilities make ATM well suited for real-time applications such as video or multimedia applications.
When provisioning ATM services, a user has a choice of several different types of service rates. The available service categories are defined in the Traffic Management 4.0 specification issued by the ATM Forum Traffic Management Group. (ATM Forum, "ATM Traffic Management Specifications 4.0," 1996). One type of service is Constant Bit Rate (CBR) service. With CBR service, a fixed bit rate is specified so that data is sent in a steady stream similar to the service provided by a leased line. CBR traffic is given the highest priority in the network and, therefore, provides bounded cell relay, cell delay variation, and cell loss characteristics. Another ATM service is Variable Bit Rate (VBR) service, which is frequently used for transporting audio and video data. With VBR service, a specified throughput capacity is guaranteed, but data is not sent evenly at a fixed rate. The VBR service category is divided into two subclasses, one for real-time and the other for non-real-time services. The real-time VBR service category is used for services that have variable bit rates combined with stringent real-time requirements. Real-time VBR traffic provides strict bounds on cell delay, cell delay variation, and cell loss. The non-real-time VBR service category is used when timely delivery of information is important, but some amount of jitter can be tolerated. Non-real-time VBR does not strictly bound cell delay and cell delay variation like real-time VBR does.
A third type of ATM service is Unspecified Bit Rate (UBR) service. UBR service does not guarantee any throughput levels and is the lowest priority traffic class. UBR service is used for applications in which the transfer rate is not critical, such as file transfers and other applications in which delays can be tolerated. A fourth type of ATM service is Available Bit Rate (ABR) service. ABR service provides a guaranteed minimum capacity but also allows data to be bursted at higher capacities when the network is free. ABR is the only service category in which the network provides feedback to the sender or source about transmission rates. If the network becomes congested, resource management cells are sent to the user asking that the transmission rate be reduced. ABR service is designed to provide a low cell loss rate, but bounds for the maximum delay and delay variation are not provided.
A unique feature of ATM is the ability to provide guaranteed throughput levels. The ATM Forum has defined Quality of Service (QoS) parameters which quantify end-to-end network performance at the ATM layer. (ATM Forum, "ATM Traffic Management Specifications 4.0," 1996). The QoS parameters include a traffic descriptor which specifies the rate and characteristics of users traffic, negotiable network performance parameters, and fixed non-negotiable characteristics of the network. A traffic contract may contain two or more of the following parameters: Peak Cell Rate (PCR), Sustained Cell Rate (SCR), Minimum Cell Rate (MCR), Cell Delay Variation Tolerance (CDVT), and Maximum Burst Size (MBS).
The traffic descriptor or contract describes the rate Roth peak and average), the burstiness, and jitter tolerance for a connection. The PCR defines the maximum instantaneous rate at which a user can send data, while the SCR is the long term average rate over an interval. For CBR services over an ATM network, the peak and sustained cell rates will be the same while for other service classes the sustained rate will be lower than the peak rate. In addition to having different peak and average rates, VBR services define an MBS which specifies the maximum number of back-to-back cells that will be generated at the peak rate. The cell delay variation tolerance is the maximum jitter allowed in user data before it enters the network. The minimum cell rate is a minimum bandwidth guaranteed by the network. For ABR service the actual rate will be between the minimum rate and the peak rate depending on how congested the network is. Three QoS parameters have been identified which may be negotiated between the end user and the network when a connection is established: the Cell Transfer Delay (CTD), the Cell Delay Variation (CDV), and the Cell Loss Ratio (CLR). The CTD is the average transmission time for a cell, while the CDV is the maximum variation from the average transmission time allowed. The CLR is the fraction of the transmitted cells that are not delivered to their destination.
In order to reduce resource requirements for storing and transmitting video steams, compression techniques such as Moving Picture Experts Group (MPEG) and motion-Joint Photographic Experts Group (motion-JPEG) are utilized. MPEG achieves high compression rates by storing only the changes from one frame to another, instead of each entire frame. The video information is then encoded using a technique called Discrete Cosine Transform (DCT). There are two major MPEG standards: MPEG-1 (see, International Standard ISO/IEC 11172-2) and MPEG-2 (see, International Standard ISO/IEC 13818, 1996). The JPEG standard is a lossy compression technique for color images that can reduce file sizes to about 5% of their normal size. The motion-JPEG standard extends the JPEG standard by supporting video images, whereby each frame in the video is stored with the JPEG format.
Through a combination of spatial and temporal compression techniques, MPEG video can be compressed up to approximately 30:1 while preserving image quality. The spatial compression techniques are the same as those used by JPEG and include DCT, quantization and entropy coding. The temporal compression techniques used rely on block-based motion compensation to reduce the temporal redundancy. In MPEG, three main picture types are defined, including Intra-Coded Picture (I-Picture), Predictively-Coded Picture (P-Picture) and Bidirectionally-Coded Picture (B-Picture). I-Pictures are self-contained and are coded without reference to other pictures. They are used as reference frames during the encoding of other picture types and are coded with only moderate compression. P-Pictures are coded more efficiently using motion-compensated prediction from a past intra or predictive picture. B-Pictures provide the highest degree of compression and require both past and future reference pictures for motion compensation. Several frames may be grouped together in a pattern to form what is referred to as a Group of Pictures (GoP).
The MPEG standards do not prescribe the encoding process. Instead, the standards specify the data input format (i.e., the syntax) for the decoder, as well as detailed specifications for interpreting this data (i.e., the decoding semantics). An encoder must follow a set of steps known as the encoding process to compress video data. This process is not standardized and may vary from application to application, depending on the particular application's requirements and complexity limitations. This allows the encoding process to be optimized for an application's bandwidth and quality requirements. Commercially available encoders support a wide range of transmission and storage applications, using both CBR and VBR encoding.
The MPEG standards have been widely adopted for providing digital video services. Digital video, however, is bursty in nature. The burstiness of digital video depends on the frequency of changes in the background and the movement of objects in the foreground. Without rate control, the output bit stream of a video encoder will be of variable bit rate since it depends on the complexity of the scene, the degree of motion, and the frequency of scene changes. With variable rate MPEG encoding, this implies that different program materials will require different traffic contracts based on the complexity of the scene, the degree of motion and the frequency of change of the video being transmitted over the network.
As digital video systems are deployed, efficient utilization of storage and network resources will be needed to reduce costs and increase revenues. Any solution for providing storage and bandwidth savings must also maintain video quality. Compression techniques such as variable bit rate MPEG permit high compression rates while preserving image quality. However, uncontrolled burstiness will lead to inefficient use of network resources by occasionally requiring excessively high processing, storage (buffering) and transmission capacity from the network. Past attempts have focused on constant bit rate solutions for delivering real-time video to customers or clients. For example, digital video encoders have been implemented with additional rate-control and buffering in the encoder to generate a constant bit rate stream for transmission and distribution applications. In such systems, the fullness of the rate-control buffer dynamically controls the quantization resolution so that the number of bits generated per picture satisfies the bit rate constraints of the video stream. These rate adaption methods not only lead to variable video quality, but also they result in poor utilization of bandwidth since the rate must be selected to accommodate the most complex scenes, and the encoder may need to use stuffing bits to maintain the constant bit rate.
As a result, there is presently a need for a technique and/or arrangement that permits the transmission and distribution of digital video streams over a switched network, while minimizing the usage of network and storage resources. There is also a need for a system and method that controls the burstiness and bit rate variability of a video stream, so that the stream adheres to a traffic contract while maintaining a desired level of video quality. Such features would enable providers to transmit and distribute video streams to clients in a cost effective manner and with guaranteed levels of video quality and service.